package com.company.genealogy.web.service;

import java.util.List;
import java.util.Map;

/**
 * 首页服务接口
 * 提供首页所需的各种业务逻辑
 */
public interface HomeService {

    /**
     * 获取今日提醒
     */
    List<Map<String, Object>> getTodayReminders();

    /**
     * 获取家族统计信息
     */
    Map<String, Object> getFamilyStats(Long clanId);

    /**
     * 获取家族动态
     */
    Map<String, Object> getFamilyNews(int page, int size, Long clanId);
    
    /**
     * 获取动态点赞详情
     */
    List<Map<String, Object>> getNewsLikes(List<Long> newsIds);

    /**
     * 获取热门分支
     */
    List<Map<String, Object>> getHotBranches(int limit, Long clanId);

    /**
     * 获取用户贡献统计
     */
    Map<String, Object> getUserContributions();

    /**
     * 获取即将到来的活动
     */
    List<Map<String, Object>> getUpcomingEvents(int limit);

    /**
     * 获取家族人口分布
     */
    Map<String, Object> getPopulationDistribution();

    /**
     * 获取世代人数统计
     */
    Map<String, Object> getGenerationStats();

    /**
     * 获取年龄结构分析
     */
    Map<String, Object> getAgeStructure();

    /**
     * 获取首页仪表盘数据
     */
    Map<String, Object> getDashboard();
} 